_eeee_llll_ffff______rrrr_aaaa_nnnn_dddd, _eeee_llll_ffff______nnnn_eeee_xxxx_tttt, and _eeee_llll_ffff______bbbb_eeee_gggg_iiii_nnnn manipulate simple object files and
archives. _e_l_f is an ELF descriptor previously returned from _eeee_llll_ffff______bbbb_eeee_gggg_iiii_nnnn.
_eeee_llll_ffff______rrrr_aaaa_nnnn_dddd provides random archive processing, preparing _e_l_f to access an
arbitrary archive member. _e_l_f must be a descriptor for the archive
itself, not a member within the archive. _o_f_f_s_e_t gives the byte offset
from the beginning of the archive to the archive header of the desired
member. See _eeee_llll_ffff______gggg_eeee_tttt_aaaa_rrrr_ssss_yyyy_mmmm(3E) for more information about archive member
offsets. When _eeee_llll_ffff______rrrr_aaaa_nnnn_dddd works, it returns _o_f_f_s_e_t. Otherwise it returns
0, because an error occurred, _e_l_f was null, or the file was not an
archive (no archive member can have a zero offset). A program may mix
random and sequential archive processing.
EEEEXXXXAAAAMMMMPPPPLLLLEEEE
An archive starts with a ``magic string'' that has _SSSS_AAAA_RRRR_MMMM_AAAA_GGGG bytes; the
initial archive member follows immediately. An application could thus
provide the following function to rewind an archive (the function returns